package com.sky.web.example.controller.test;

import com.sky.common.annotation.Anonymous;
import com.sky.web.example.bean.User;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.HashMap;
import java.util.Map;

@Anonymous
@Api(value="用户测试接口",tags = "用户管理")
@RestController
@RequestMapping("/users")
public class MyFirstController {

    // 创建一个静态的Map来模拟用户数据存储
    private static Map<Integer, User> userMap = new HashMap<>();

    // 静态初始化块，用于填充模拟数据
    static {
        userMap.put(1, new User("Alice", 18));
        userMap.put(2, new User("Bob", 20));
    }

    // 获取所有用户信息，直接返回Map
    @GetMapping
    @ApiOperation(value = "获取所有用户", notes = "谨慎操作")
    public Map<Integer, User> getAllUsers() {
        return userMap;
    }

    // 根据用户ID获取特定用户信息，不使用@PathVariable，改为通过请求参数传递ID
    @GetMapping("/getById")
    @ApiOperation(value = "获取指定ID用户", notes = "谨慎操作")
    public User getUserById(int id) {
        // 这里假设id参数是通过查询字符串传递的，如：/users/getById?id=1
        return userMap.get(id);
    }
}
